1. Field of the Invention
The invention relates generally to integrated circuits including internal testing/debug components and more specifically relates to acquiring testing/debug signaling from such integrated circuits.
2. Discussion of Related Art
Electronic circuits perform a wide variety of designated functions for electronic systems. For example, integrated circuits may be used for data processing, data storage and retrieval, system analysis and control, and many other functions. Integrated circuits may be subject to programming, design, or operational errors, and internal operational signals are not exposed for acquisition by external devices during normal operation (i.e., they are internal to the circuit). It would be impractical or impossible to connect every internal operational signal to its own dedicated output pin of the circuit for monitoring purposes. As such, it is desirable not only to include logic at the circuit that performs the circuit's desired function, but also to include logic and components at the circuit for debugging and testing purposes (e.g., for externally monitoring internal operational signals of the circuit). For example, the circuit may include test multiplexers (MUXs) having registers that can be programmed to select internal operational signals for routing through the test MUXs. The test MUXs provide the selected internal operational signals as test outputs (e.g., specialized debug outputs) for the circuit. Utilizing MUXs to output test signals that are normally internal to the circuit ensures that the cost and size of a circuit implementing testing logic is reduced, because MUXs allow a large number of internal signaling pathways to be condensed into a much smaller number of output signal paths. These output paths may be monitored by a logic analyzer to acquire the selected internal operational signals.
Unfortunately, utilizing a hierarchy of test MUXs to provide internal debug signals results in a number of problems. For example, the very structure of a test MUX hierarchy typically limits the number of signals that can be used for analysis because the test MUX hierarchy sifts a large number of signals (e.g., millions of signals) into a much smaller number of signals (e.g., tens of signals). Furthermore, the selection of certain signals will preclude the selection of other signals because they use conflicting configurations of registers of the test MUX hierarchy. Thus, while a test MUX hierarchy typically allows the acquisition of a number of internal operational signals, it does not allow for the acquisition of a large fraction of the internal operational signals at once. Instead, only a small group of signals may be acquired simultaneously. Because electronic circuits continue to increase in complexity and size, the limited number of signals provided by the test MUX hierarchy for review may be insufficient to test the circuit's response to a given event.
In some systems, a crosspoint switch (also known as a “crossbar switch”) may be used alternatively to or in conjunction with a test MUX hierarchy. The crosspoint switch may be used to address the issues of signal exclusion generally encountered by the test MUX hierarchy. However, even with a crosspoint switch only a small number of total signals may be selected for debugging purposes, which means that the crosspoint switch may still be insufficient to test the event-response characteristics of the circuit.
Thus it is an ongoing challenge to acquire a large number of internal operational signals for use in testing a circuit while at the same time keeping the cost of the circuit reasonable.